{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "c425be86",
   "metadata": {},
   "source": [
    "### 策略迭代"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "57434c2f",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-05-09T08:21:14.333908Z",
     "start_time": "2024-05-09T08:21:13.200226Z"
    }
   },
   "outputs": [],
   "source": [
    "from IPython import display\n",
    "import matplotlib\n",
    "import gym\n",
    "from gym.envs.toy_text.frozen_lake import generate_random_map\n",
    "import matplotlib.pyplot as plt\n",
    "%matplotlib inline"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "517a98f1",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-05-09T08:21:15.104876Z",
     "start_time": "2024-05-09T08:21:15.098871Z"
    }
   },
   "outputs": [],
   "source": [
    "class GymHelper:\n",
    "    def __init__(self,env,figsize=(3,3)):\n",
    "        self.env=env\n",
    "        self.figsize=figsize\n",
    "        plt.figure(figsize=figsize)\n",
    "        self.img=plt.imshow(env.render())\n",
    "    def render(self,title=None):\n",
    "        img_data=self.env.render()\n",
    "        self.img.set_data(img_data)\n",
    "        display.display(plt.gcf())\n",
    "        display.clear_output(wait=True)\n",
    "        if title:\n",
    "            plt.title(title)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "e95d3c51",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-05-09T08:21:16.368974Z",
     "start_time": "2024-05-09T08:21:15.921575Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 300x300 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "np.random.seed(100)\n",
    "env=gym.make(\"FrozenLake-v1\",desc=generate_random_map(size=4),is_slippery=False,render_mode=\"rgb_array\")\n",
    "env.reset()\n",
    "gym_helper=GymHelper(env)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "dfe43256",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-05-09T08:21:17.794946Z",
     "start_time": "2024-05-09T08:21:17.781919Z"
    }
   },
   "outputs": [],
   "source": [
    "def policy_evaluation(V,policy,gamma,theta):\n",
    "    while True:\n",
    "        #初始化一个变量delata，衡量在每一轮循环后价值函数的改变程度\n",
    "        delta=0\n",
    "        for s in range(env.observation_space.n):\n",
    "            #初始化一个变量,储存计算出的状态值\n",
    "            v=0\n",
    "            #遍历当前状态下所有可能的动作以及相应的概率\n",
    "            for action,action_prob in enumerate(policy[s]):\n",
    "                #对于每个动作,查看环境所有可能的结果\n",
    "                for prob,next_state,reward,done in env.P[s][action]:\n",
    "                    if done:#游戏结束没有下一状态，关心当前状态\n",
    "                        v+=action_prob*prob*reward\n",
    "                    else:#要考虑当前状态的奖励和下一状态的折扣预测值\n",
    "                        v+=(action_prob*prob*(reward+gamma*V[next_state]))\n",
    "                #更新delta\n",
    "                delta=max(delta,np.abs(v-V[s]))\n",
    "                #更新状态s的值函数\n",
    "                V[s]=v\n",
    "            #所有状态值函数变化都小于设定的阈值,则推出循环\n",
    "            if delta<theta:\n",
    "                break\n",
    "def policy_improvent(V,policy,gamma):\n",
    "    #标记是否找到最优策略\n",
    "    optimal=True\n",
    "    for s in range(env.observation_space.n):\n",
    "        #保存当前状态\n",
    "        old_policy=policy[s].copy()\n",
    "        #初始化一个数组保存所有状态的期望回报\n",
    "        q_s=np.zeros(env.action_space.n)\n",
    "        for action in range(env.action_space.n):\n",
    "            for prob,next_state,reward,done in env.P[s][action]:\n",
    "                if done:\n",
    "                    q_s[action]+=prob*reward\n",
    "                else:\n",
    "                    q_s[action]+=(prob*(reward+gamma*V[next_state]))\n",
    "        #根据值选择最佳动作\n",
    "        best_action=np.argmax(q_s)\n",
    "        #更新策略\n",
    "        policy[s]=np.eye(env.action_space.n)[best_action]\n",
    "        #如果新策略和旧策略不同则标识位设为False\n",
    "        if np.any(old_policy!=policy[s]):\n",
    "            optimal=False\n",
    "    return optimal\n",
    "        "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "b9711382",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-05-09T08:21:18.843544Z",
     "start_time": "2024-05-09T08:21:18.836560Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(16,\n",
       " {0: [(1.0, 4, 0.0, False)],\n",
       "  1: [(1.0, 9, 0.0, False)],\n",
       "  2: [(1.0, 6, 0.0, False)],\n",
       "  3: [(1.0, 1, 0.0, False)]})"
      ]
     },
     "execution_count": 5,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "len(env.P),env.P[5]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "0a26e790",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-05-09T08:21:20.199060Z",
     "start_time": "2024-05-09T08:21:20.193515Z"
    }
   },
   "outputs": [],
   "source": [
    "def policy_iteration(gamma=0.99,max_iteration=10000,theta=0.0001):\n",
    "    V=np.zeros(env.observation_space.n)\n",
    "    policy=np.ones([env.observation_space.n,env.action_space.n])/env.action_space.n\n",
    "    for i in range(max_iteration):\n",
    "        policy_evaluation(V,policy,gamma,theta)\n",
    "        optimal=policy_improvent(V,policy,gamma)\n",
    "        if optimal:\n",
    "            break\n",
    "    return V,policy"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "5e532603",
   "metadata": {
    "ExecuteTime": {
     "start_time": "2024-05-09T08:21:21.394Z"
    }
   },
   "outputs": [],
   "source": [
    "V,policy=policy_iteration(max_iteration=10)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "7076e862",
   "metadata": {},
   "outputs": [],
   "source": [
    "V.shape,policy,np.array([\"左,\"下\",\"右\",\"上\"])[np.argmax(policy.reshape(4,4,4),axis=2)]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "7b56e190",
   "metadata": {},
   "outputs": [],
   "source": [
    "observation,_=env.reset()\n",
    "gym_helper=GymHelper(env)\n",
    "#进去十步游戏\n",
    "for i in range(10):\n",
    "    #title为当前步数数\n",
    "    gym_helper.render(title=str(i))\n",
    "    #通过已经求得的最优策略,找到当前状态的最优动作\n",
    "    action=np.argmax(policy[observation])\n",
    "    observation,reward,terminated,truncated,info=env.step(action)\n",
    "    time.sleep(0.5)\n",
    "    if terminated or truncated:\n",
    "        break\n",
    "gym_helper.render(title=\"Finished\")\n",
    "env.close()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ababe20b",
   "metadata": {},
   "source": [
    "### 价值迭代"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "d8e38c57",
   "metadata": {},
   "outputs": [],
   "source": [
    "def value_iteration(gamma,max_iteration,theta):\n",
    "    V=np.zeros(env.observation.n)\n",
    "    for i in range(max_iteration):\n",
    "        #初始化一个变量delata，衡量在每一轮循环后价值函数的改变程度\n",
    "        delta=0\n",
    "        for s in range(env.observation_space.n):\n",
    "            #初始化一个变量,储存计算出的状态值\n",
    "            q_s=np.zeros(env.action_space.n)\n",
    "            #遍历当前状态下所有可能的动作以及相应的概率\n",
    "            for action,action_prob in enumerate(policy[s]):\n",
    "                #对于每个动作,查看环境所有可能的结果\n",
    "                for prob,next_state,reward,done in env.P[s][action]:\n",
    "                    if done:#游戏结束没有下一状态，关心当前状态\n",
    "                        q_s[action]+=action_prob*prob*reward\n",
    "                    else:#要考虑当前状态的奖励和下一状态的折扣预测值\n",
    "                        q_s[action]+=(action_prob*prob*(reward+gamma*V[next_state]))\n",
    "                #更新delta\n",
    "                best_value=max(q_s)\n",
    "                delta=max(delta,np.abs(v-V[s]))\n",
    "                #更新状态s的值函数\n",
    "                V[s]=best_value\n",
    "            #所有状态值函数变化都小于设定的阈值,则推出循环\n",
    "            if delta<theta:\n",
    "                break\n",
    "        policy=get_policy(V,gamma)\n",
    "        return V,policy"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.10.9"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
